package com.java.service;

import com.java.bean.Courier;
import com.java.dao.BaseCourierDao;
import com.java.dao.impl.BaseCourierDaoImpl;

import java.util.List;
import java.util.Map;

public class CourierService {
    private static BaseCourierDao dao = new BaseCourierDaoImpl();
    /**
     * 查询数据库中所有的快递员数
     * @return
     */
     public static List<Map<String,Integer>> console(){
         return dao.console();
     };


    /**
     * 查询所有的快递列表
     * @param limit 是否分页查询
     * @param offset 起始值
     * @param pageNumber 查询页数
     * @return
     */
    public static List<Courier> findAll(boolean limit, int offset, int pageNumber){
        return dao.findAll(limit,offset,pageNumber);
    };

    /**
     * 根据id查询快递
     * @param id
     * @return
     */
    public static Courier findById(int id){
        return dao.findById(id);
    };

    /**
     * 根据快递员姓名名查询
     * @param courierName
     * @return
     */
    public static List<Courier> findByName(String courierName){
        return dao.findByName(courierName);
    };

    /**
     * 根据身份证查询
     * @param courierIdNumber
     * @return
     */
    public static Courier findByIdNumber(String courierIdNumber){
        return dao.findByIdNumber(courierIdNumber);
    };


    /**
     * 根据快递员手机号查询
     * @param courierPhone
     * @return
     */
    public static Courier findByPhone(String courierPhone){
        return dao.findByPhone(courierPhone);
    };

    /**
     * 快递员的录入
     * @return
     */
    public static boolean insert(Courier c){
        return dao.insert(c);
    };

    /**
     * 信息修改
     * @param id
     * @param newCourier
     * @return
     */
    public static boolean update(int id,Courier newCourier){
        return dao.update(id, newCourier);
    };


    /**
     * 派件数修改
     * @param id
     * @param increment
     * @return
     */
    public static boolean updateSendNumber(int id,int increment){
        return dao.updateSendNumber(id, increment);
    };

    /**
     * 更新登录时间
     * @param id
     * @return
     */
    public static boolean updateLoginTime(int id){
        return dao.updateLoginTime(id);
    };

    /**
     * 根据id删除信息
     * @param id
     * @return
     */
    public static boolean delete(int id){
        return dao.delete(id);
    };
}
